namespace PerCiGal.BPC
{
    public interface IBPCMovie
    {
        /// <summary>
        /// Insert new movie in collection
        /// </summary>
        /// <param name="collectionInfo"></param>
        /// <param name="movie"></param>
        /// <returns></returns>
        int MovieDetailsInsert(Types.COLLECTION_INFO collectionInfo, Types.MOVIE_DETAILS movie);

        /// <summary>
        /// Update data of movie
        /// </summary>
        /// <param name="collectionInfo"></param>
        /// <param name="movie"></param>
        void MovieDetailsUpdate(Types.COLLECTION_INFO collectionInfo, Types.MOVIE_DETAILS movie);

        /// <summary>
        /// Remove movie from collection
        /// </summary>
        /// <param name="collectionInfo"></param>
        /// <param name="codMovie"></param>
        void MovieDetailsDeleteByCodMovie(Types.COLLECTION_INFO collectionInfo, int codMovie);

        /// <summary>
        /// Get movie details
        /// </summary>
        /// <param name="collectionInfo"></param>
        /// <param name="codMovie"></param>
        /// <returns></returns>
        Types.MOVIE_DETAILS MovieDetailsSelectByCodMovie(Types.COLLECTION_INFO collectionInfo, int codMovie);
    }
}